System for wireless connectivity continuity and quality

ABSTRACT

Configurations are described for maintaining a continuity and quality of wireless signal connection between a mobile device and systems accessible through the internet. In particular, configurations are disclosed to address the challenge of a mobile device that moves through a physical environment wherein the best wireless connectivity performance is achieved by switching between available connection sources and constantly evaluating a primary connection with other available connections that may be switched in to become a new primary connection. The mobile device may be self-propelled or carried by some other mobilizing means.

RELATED APPLICATION DATA

The present application is a continuation of U.S. patent applicationSer. No. 13/858,896, filed on Apr. 8, 2013 which claims the benefitunder 35 U.S.C. §119 to U.S. Provisional Application Ser. No. 61/621,427filed Apr. 6, 2012. The foregoing application is hereby incorporated byreference into the present application in its entirety.

FIELD OF THE INVENTION

The present invention relates generally to wireless connectivity ofcomputing and controlling systems to each other, and more particularlyto configurations for switching between connectivity partnering sourcesat relatively high frequency to both discover and utilize updatedwireless partnering relationships as a mobile device is moved aroundrelative to the sources.

BACKGROUND

There are many types of mobile computing systems designed to beconnected to other systems via wireless communication. For example,relative basic systems such as that marketed under the tradename iPodTouch® by Apple Computer of Cupertino, Calif., are designed to browsethe internet through WiFi connectivity as they are carried about by auser. On the more complex side, various mobile computing systems areavailable that incorporate not only WiFi type connectivity, but alsowireless mobile network connectivity, such as via a cellmodem. Thepresently available systems are not particularly good at maintainingconnectivity, as the users of cellphones, cellmodems, and WiFi-connectedsystems have experienced when moving about with the systems, such as bymoving in a car or even walking about from one location in a building toanother location in the same building. Typically what happens is thatthe connectivity becomes interrupted or dropped, and the user findshimself trying to regain connectivity, generally by redialing or usingsoftware utilities to attempt reconnection. Indeed, notwithstanding themillions of mobile communication and computing devices, such as laptopsand iPhone Touch® devices, sold in the U.S. and other countries, thereremains a lack of solutions for connectivity robustness, and almost anyconsumer of technologies can point to the numerous times he or she hasdropped a signal at an inconvenient moment, only to have to try toregain connectivity manually. There is a need for systems and methodsconfigured to automatically assist with seeking out, testing, utilizing,and upgrading wireless connectivity in real or near-real time at afrequency high enough to make the overall connectivity scenariorelatively robust.

SUMMARY

One embodiment is directed to a system for maintaining wirelessconnectivity between a mobile controller and a remote controller,comprising: a wireless adaptor operatively coupled between the mobilecontroller two wireless access points that are operatively coupled tothe remote controller, the wireless adaptor configured to have atiming-multiplexed operational mode wherein connectivity may bemaintained between the mobile controller and the remote controller onboth a first channel to a first wireless access point of the twowireless access points, and a second wireless access point of the twowireless access points, such that data transmission between the mobilecontroller and remote controller is switched between the first channeland the second channel based at least in part upon data transmissiontiming gaps associated with a protocol that is operated by wirelessadaptor and the two wireless access points; wherein the mobilecontroller is configured to operate the wireless adaptor toautomatically: scan to find available wireless access points; connect tothe remote controller through a first wireless access point with thefirst channel and evaluate the connectivity of the connection; whileretaining connectivity with the remote controller through the firstchannel, connect to the remote controller through a second wirelessaccess point with the second channel and evaluate the connectivity ofthe connection; compare the evaluated connectivities of the first andsecond channels to find a highest evaluated channel and a lowestevaluated channel; and maintain connectivity between the mobilecontroller and remote controller through the highest evaluated channel.The wireless adaptor may have a single wireless transmitter. The singlewireless transmitter may be an RF antenna. In the background scanningmode, data may be alternated through the single wireless transmitterfrom both the first channel and the second channel. The data may bealternated in bit packets based upon a bit packet size. The data may bealternated based upon a time interval. The bit packet size may bepredetermined. The bit packet size may be adjustable using the mobilecontroller. The time interval may be predetermined. The time intervalmay be adjustable using the mobile controller. The wireless adaptor maybe compatible with an IEEE 802.11 standard selected from the groupconsisting of: 802.11A, 802.11B, 802.11G, and 802.11N. The wirelessadaptor may be a cellular telephone adaptor. The wireless adaptor may bean IEEE 802.16 compatible adaptor. The wireless adaptor may be afree-space optical adaptor. The mobile controller may be configured tooperate the wireless adaptor to scan using a discrete frequency band.The discrete frequency band may be selected based upon a determinedprevalence of active wireless access points. The mobile controller maybe configured to scan again to find available wireless access pointsafter disconnecting connectivity between the mobile controller andremote controller through the lowest evaluated channel. The mobilecontroller may be configured to repeatedly cycle between scanning tofind available wireless access points and disconnecting connectivitybetween the mobile controller and remote controller through the lowestevaluated channel. The mobile controller may be configured to repeatedlycycle at a frequency between about 100 cycles/second and about ½cycles/second. The mobile controller may be coupled to a motorizedvehicle. The motorized vehicle may comprise a robot. The mobilecontroller may be configured to evaluate the connectivity of theconnection with the first or second channel based at least in part upona factor selected from the group consisting of: latency, packet loss,and financial cost of connectivity. The mobile controller further may beconfigured to operate the wireless adaptor to automatically disconnectconnectivity between the mobile controller and remote controller throughthe lowest evaluated channel. At least one of the data transmissiontiming gaps may be based upon an IEEE 802.11 distributed coordinationfunction timing protocol. At least one of the timing gaps may representa protocol element selected from the group consisting of: a randombackoff period, a DCF interframe spacing period, a request to sendperiod, a short interframe spacing period, a clear to send period, andan acknowledgement period.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1I depict embodiments of computing systems which may beconnected to the internet or other computing systems using one or morewireless transceivers.

FIGS. 2A-2E depict an embodiment wherein a mobile computing systemconnected via one or more wireless technologies is moved through anenvironment that has a plurality of WiFi adaptors in various locations.

FIG. 3 depicts one embodiment of the invention wherein a WiFi adaptorcapable of background scanning on a second channel may be utilized toimprove connectivity robustness and quality.

FIGS. 4A-4D depict embodiments of computing systems which may beconnected to the internet or other computing systems using two or morewireless transceivers.

FIG. 5 depicts one embodiment of the invention wherein a controllercoupled to two or more WiFi adaptors may be utilized to improveconnectivity robustness and quality.

FIGS. 6A and 6B depict mobile computing system variations with two WiFiadaptors as well as a cellular wireless adaptor.

FIGS. 7A-7E depict an embodiment wherein a mobile computing systemconnected via one or more wireless technologies and one or more cellularwireless adaptors is moved through an environment that has a pluralityof WiFi adaptors and cellular transceiver systems in various locations.

FIG. 8 depicts one embodiment of the invention wherein a combination ofWiFi connectivity and cellular connectivity may be utilized to improveconnectivity robustness and quality for a mobile computing system.

FIG. 9 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 10 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 11 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 12 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 13 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 14 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 15 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 16 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 17 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 18 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 19 depicts one embodiment of a mobile computing system havingvarious multi-modal wireless communications capabilities that may beutilized to improve connectivity robustness and quality for a mobilecomputing system.

FIG. 20 illustrates an IEEE 802.11 distributed coordination functionprotocol data transmission timing diagram.

FIG. 21 illustrates one embodiment wherein a multi-modal communicationconfiguration may be utilized to time-multiplex data transmissions toyield efficiency and redundancy.

DETAILED DESCRIPTION

Referring to FIGS. 1A-1I, various mobile computing scenarios encounterconnectivity challenges related to the notion that a computing systemand associated transceiver are being moved in and out of proximity ofone or more wireless networking connectivity points. Referring to FIG.1A, a typical mobile computing system (6) is depicted comprising alaptop computer (16) that is equipped with a single transceiver antennadesigned to work with IEEE 802.11 type networks (such as 802.11A,802.11B, 802.11G, 802.11N), also known as “WiFi” networks, to connectwith other computing systems. In a typical mobile computing scenario,the system (6) may be transported to various locations that are inbetween two or more WiFi transceiver access points (2, 4), andconventionally, a WiFi adaptor operatively coupled to, or comprising aportion of, the mobile computing system (6) may be utilized to connectwith one of the access points (2, 4) at a time, generally through amanual selection configuration wherein the operator of the computingsystem selects an access point for connectivity. Referring to FIG. 1B,the computing system (6) may be operatively coupled to an external WiFitransceiver (14) in the event that one is not integrated into thecomputing system. Referring to FIG. 1C, even relatively large computingsystems, such as the depicted desktop computing system (18), may bemobilized between WiFi access points (2, 4) using a cart, vehicle, orother transportation means that bring about a need for solvingconnectivity robustness challenges that are associated with the mobilityrelative to the positions of the WiFi access points (2, 4).

Referring to FIG. 1D, a handheld (20) mobile computing system (6), suchas those distributed under the tradename iPod Touch® by Apple Computerof Cupertino, Calif., comprises a single WiFi transceiver antenna (8)and is configured to be carried with the operator as the operator movesin an environment that may be within the range of two or more WiFiaccess points (2, 4). Referring to FIGS. 1E and 1F, the connectivity andmobility challenge may be associated with a device that isself-propelled. Referring to FIG. 1E, an electromechanically mobile toyrobot (22) comprises a computing system or microcontroller (6) and atransceiver antenna (8). As the toy robot (22) is navigated usinginstructions from a remote master input device (such as a joystick thatmay be connected to a computer local to the operator), an integratedcamera and other devices may be utilized to capture images and send themthrough a wireless network, such as a WiFi network facilitated by one ormore access points (2, 4), to a computer that may be observed by theoperator during the robot navigation. Referring to FIG. 1F, anelectromechanically mobile remote presence system (24), such as thoseavailable from Vgo Communications, Inc. of Nashua, N.H., InTouch Health,Inc. of Santa Barbara, Calif., or Suitable Technologies, Inc. of PaloAlto, Calif., is depicted, generally comprising a computing system ormicrocontroller (6) and a transceiver antenna (8) mounted upon a mobilebase capable of electromechanically navigating floors and other surfacessubject to commands from a remote operator connecting to the mobilecomputing system (6) through some kind of wireless network, such as aWiFi network that may be facilitated by one or more wireless accesspoints (2, 4) positioned in the vicinity of the mobilized system (24).Typically control commands, such as affirmative driving or navigationcommands, or attempts to communicate with others, such as transmittedsound and/or video, are directed from a computer local to the operator,through a wireless network, to the mobile remote presence system (24),and captured video or photo images, sound, and other information aredirected from the mobile system (24) back to the computer local to theremote operator through the same wireless network.

Referring to FIGS. 1H, 1H, and 1I, a mobile computing system (6), inthese cases comprising a mobile handset (20), may be rapidly movedthrough the transmission ranges of various network access points, suchas WiFi access points (2, 4), with various types of mobilityconfigurations. For example, a person may carry a system (6, 20) withthem as they walk around an office environment or out on a sidewalk,they may carry the system (6, 20) with them as they (26) ride a bicycle(28), or they may carry the system (6, 20) with them as they mobilizewithin a faster vehicle, such as a car (30) or even an airplane (32).With any of the connectivity mobility challenges presented in FIGS.1A-1I, there is a need for systems and methods configured toautomatically assist with seeking out, testing, utilizing, and upgradingwireless connectivity in real or near-real time at a frequency highenough to make the overall connectivity scenario relatively robust.

Referring to FIGS. 2A-2E, in one embodiment, a parallel connectivity andswitching scheme may be utilized to address the wireless connectivityrobustness challenge. Referring to FIG. 2A, a mobile computing systemcomprising a handheld device (6, 20) is located at a first locationdesignated as point “A” (64). This location (64) is surrounded by aplurality of WiFi access points (2, 4, 34, 36, 38, 40, 42) that aredistributed amongst a plurality of physical structures (44, 46, 48, 50,52, 54, 56, 58, 60), that may be, for example, representative of cubicledividers in an indoor work environment, walls within an indoor workenvironment, city blocks within a town, or other configurations. In thepresent illustrative example, the shall be considered walls within anindoor work environment. At the first location (64), the system (6, 20)appears to be closest to the WiFi access points in rooms 46, 48, and 50(2, 4, and 34, respectively). In one embodiment, the system (6, 20)comprises a WiFi adaptor that is configured to be able to connect withone channel while continuing to scan on another channel in thebackground. In such embodiment, absent an initial connection, the system(6, 20) preferably is configured such that the computing system (6) orcontroller will operate the WiFi adaptor to scan to find available WiFiaccess points. In the scenario depicted in FIG. 2A, let's assume thatthe scanning exercise finds only the WiFi access points in rooms 46, 48,and 50 (2, 4, and 34, respectively). In this embodiment, the controllerwill be configured to attempt to connect to the internet through each ofthe available connected servers, and evaluate each of the connections.In other words, whenever it does connect to a server, it will try tosend data to the server, and if successful in sending data, will ratethe connectivity based upon one or more factors, such as lowest latency,lowest packet loss, least expensive (in the event of a fee for serviceparadigm), etc. Given an opportunity to choose between two availablesources of connectivity, the system is configured to route all trafficthrough the best (i.e., most highly rated in view of the rating factors)connection, which may be transiently deemed the “primary” connection.With the primary connection established and data flowing through theprimary, the system generally will be configured to not disturb theprimary connection, but to scan very aggressively with the otherremaining channel (transiently the “secondary” channel of the WiFiadaptor) to find other access points and other associated connectivitythat may rank above or near the connectivity ranking of the currentprimary connection, the notion being that the primary/secondary rolesare transient, and if the secondary starts to look better than theprimary, the system will automatically reverse the roles. In theabovedescribed embodiment wherein one WiFi adaptor is utilized to allowscanning of two channels, it may be somewhat difficult to leave theprimary channel undisturbed, as the transceiver needs to be alsoutilized (i.e., via multiplexing, etc) for the secondary channel.

The switching of primary and secondary connection roles may beaccomplished by the system almost instantly by switching the packetstream so that an outside connectivity gateway associated with a remoteserver or computer to which the mobile system (6) is being connectedwill be electronically notified that the packets that used to be comingfrom one adaptor channel are now coming from another adaptor channel, sothe remote server or computer should now stream the reply packets to thenew location. Indeed, the world of external computing systems to whichthe mobile system (6) will be connected are well-suited for this kind ofswitching configuration. Cryptographic hash techniques or other securityfeatures may be utilized to prevent any other computing systems frombreaking into the communication established between the mobile computingsystem (6) and the targeted remote server.

Another important feature of this embodiment is a frequency scanningparadigm wherein not all frequencies are scanned with each bout ofscanning from the secondary channel (or in the case of an adaptor thathas no initial connectivity, both or all available channels which may bescanning simultaneously to establish a primary connection). For example,in a conventional scenario, such as one involving the Linux NetworkManager WiFi adaptor control configuration, the WiFi adaptor will do ascan of the whole 802.11 A or 802.11 B band, which can take 5 or 10seconds, after which it will select an access point and try to connect.If that initial attempt fails, the controller will reschedule anotherscan 5 seconds in the future. Then it will do another scan, selectanother access point, and try to connect again. If that second attemptfails, the operator of the computer is sitting waiting for a connectionfor at least 30 seconds. The inventive system is much more aggressive.For example, in one embodiment, the controller generally is configuredto operate the WiFi adaptor channels to not do full scans of allavailable frequencies; rather, it is configured to scan just a fewselected frequencies on a “hot” list in a staggered fashion, such that anew batch of scans comes in every few milliseconds from one or moreparticular frequencies, with new data for the entire hot list returningevery few seconds—such as on a cycle of about 3 seconds. With the newdata, the controller may be configured to immediately start makingdecisions about whether to connect or not. So in such an embodiment,scan time is minimized quite a lot relative to conventional paradigms.Further, a “fail fast” logic paradigm dictates that after a decision totry to connect is made, a connection attempt is made very rapidly, afterwhich connectivity success or failure is monitored for a brief time—suchas one second (or perhaps two seconds on an encrypted network); if thereis no answer within two or three seconds, the connectivity is deemed afailure and the system moves on. Further, once the system (6) isconnected to an outside server or computer, it needs an address forcommunications. This generally involves what is known as dynamic hostconfiguration protocol, or “DHCP”, and in the preferred embodiment, thesystem is quite aggressive with this also. In one embodiment, if a DHCPrequest is not answered within a couple of seconds, the system will trya second attempt; if the second attempt for an address is not successfulvery quickly, connectivity is deemed a failure. Generally, the system isconfigured to attempt to connect for at most two seconds, and will betrying to connect every few hundred milliseconds. Thus the theme ofbeing very aggressive and having strict limits for timing out and movingon.

Referring again to the aforementioned “hot” list of frequencies and thenotion of only scanning a select group of frequencies, in one embodimentthe system is configured to categorize frequencies within a particular802.11 WiFi paradigm. For example, in an 802.11 B configuration, wherethere are 11 discrete wireless connection frequencies, the system may beconfigured to have a prioritization organization for this group of 11,such that each frequency is labeled as either “hot”, “medium”, or “cold”based upon factors such as strength of signal in a recent timeframe,time in as a primary connection frequency in the a recent timeframe,average latency over a given timeframe, average packet loss over a giventimeframe, or cost over a given timeframe. In an scenario wherein 3 ofthe 11 802.11 B frequencies are on the “hot” list, the system may beconfigured to quickly and repetitively scan those three discretefrequencies only to establish primary and secondary connectivity,without resorting to the remaining 8 frequencies that only arecategorized as “medium” or “cold”. In one embodiment, upon failure toconnect within a given period of time using one of the “hot”frequencies, the system may be configured to include the “medium”frequencies in the scanning routine, and perhaps even the “cold”frequencies to observe whether any of them appear to be improving andpotentially moving from “cold” to “medium” or “hot”; similarly, scanningthe “medium” frequencies may assist in updating the evaluation of suchfrequencies, and potentially reclassifying one or more of them as “hot”or “cold” given the updated information. In one embodiment, the “hot”frequencies may be scanned at relatively short intervals, say every 2 or3 seconds, while “medium” frequencies may be scanned only every 5seconds, and “cold” frequencies scanned only every 10 seconds. Suchintervals may be tuned in accordance with the available hardwareconfigurations. We have found that the inventive system is able to scana frequency in as little as 100 milliseconds, so scanning all 11 of the802.11 B frequencies can be conducted in as little as 1.1 seconds. Othernetwork protocols, such as 802.11 A, have larger numbers of discretefrequencies (20, 30, or more), which may place even more value onemploying a frequency/scanning prioritization schema as described above,so that the hardware may be utilized to scan at relatively highfrequency the frequencies that are known to be “hot”, and not waste asmuch time on the ones that are known to be “cold” or “medium”.

Referring to FIG. 2B, as the mobile system (6, 20) approaches point “1”(70) on the path (68) between point “A” (64) and point “B” (66), it maystart to see signal from not only the first three WiFi access points inrooms 46, 48, and 50 (2, 4, and 34, respectively), but also from twoadditional WiFi access points in rooms 56 and 58 (36, 38, respectively).In a case wherein a primary connection has already been established (sayto WiFi access point 1 (2)), the mobile wireless adaptor may be scanningin the background to analyze all of the remaining available connectionsthrough the other WiFi access points (4, 34, 36, 38), or may utilize a“hot/medium/cold” or similar paradigm to mitigate the number of scans byfocusing initially only upon the “hot” frequencies (which may beassociated with any of the four other WiFi access points 4, 34, 36, 38),for example, as described above. Similarly, referring to FIG. 2C, as themobile system (6, 20) approaches point “2” (72) on the path (68) betweenpoint “A” (64) and point “B” (66), it may start to see signal from notonly the first five WiFi access points in rooms 46, 48, 50, 56, 58 (2,4, 34, 36, and 38, respectively), but also from two additional WiFiaccess points in rooms 60 and 62 (40, 42, respectively). As the system(6, 20) continues to move along the path (68), it will continue toanalyze potential secondary connections, and possibly switchprimary/secondary connection roles as described above. Further, a“hot/medium/cold” or similar paradigm may be utilized to mitigate thenumber of scans by focusing initially only upon the “hot” frequencies(which at point “2” (72) may, for example, be associated with any of theseven access points that can be detected), for example, as describedabove. Referring to FIGS. 2D and 2D, as the mobile computing systemcontinues to move through the environment along the path (68) to point“3” (74) and ultimately point “B” (66), a similar persistenttesting/analysis and possible primary/secondary connection roleswitching may be conducted to maintain a robust connectivity schemabetween the mobile system (6, 20) and one or more computers or serversto which the mobile system (6, 20) is trying to remain connected,through the internet.

Referring to FIG. 3, a flowchart illustrates one embodiment wherein acontroller is operatively coupled to a WiFi adaptor that is configuredfor background scanning on a second channel while being connected usinga first channel (76), as described above in reference to FIGS. 2A-2E.Initially the controller may be configured to operate the WiFi adaptorto scan and find WiFi access points (78). Upon connection to a firstWiFi access point with the first channel of the WiFi adaptor, thecontroller may be configured to try to send data to a first remoteserver or computer that is operatively coupled to the WiFi access point(80). Upon success in sending data to the first remote server, thecontroller may be configured to evaluate the connectivity based upon oneor more predetermined factors (such as latency, packet loss, financialexpense of the particular connection, etc) (84). Simultaneously, thesecond channel may be utilized to connect to a WiFi access point usingbackground scanning with the WiFi adaptor, and the controller may beconfigured to send data to a remote server operatively coupled to theWiFi access point (82). With success in sending data to the secondremote server, the controller may be configured to evaluate theconnectivity based on one or more predetermined factors (such aslatency, packet loss, financial expense of the particular connection,etc) (86). The controller may be configured to select the connectionconfiguration with the best connectivity evaluation results, and thewinner may be established as a primary connection using the WiFi adaptor(88), while the non-selected channel may be utilized to continuescanning and evaluating other connection opportunities which may becomesecondary connections (90). The controller may be configured topersistently evaluate whatever connection is transiently the secondconnection relative whatever connection is transiently the primaryconnection, with the best connection becoming the new primary connection(92), and the non-selected channel continuing to scan to find andestablish alternative secondary connections which may become primaryconnections themselves (94).

Mobile computing systems may be equipped with more than one antenna ortransceiver, and more than one networking capability. For illustrativepurposes, a few embodiments are shown in FIGS. 4A-4D. For example,referring to FIG. 4A, a mobile computing system (6) in the form of alaptop computer (16) is shown having two WiFi transceivers—oneintegrated into the laptop (8), and the other (14) external butoperatively coupled. FIG. 4B shows a similar embodiment with twointernal WiFi transceivers (8, 10). FIG. 4C depicts a handheld (20)computing system (6) with two integrated WiFi transceivers (8, 10).Finally, FIG. 4D depicts a mobile telecommunications robot (24) havingtwo intercoupled WiFi transceivers (8, 10); such an electromechanicallymobile system (24) may comprise a remotely-operable electromechanicallynavigable telecommunications and remote presence platform, such as thoseavailable from Anybots, Inc. of Mountain View, Calif.

Having two independent WiFi adaptors provides the opportunity forconfiguring the controller to run them in parallel, simultaneously, toconduct connection robustness improvement techniques similar to thosedescribed in reference to FIGS. 2A-3. For example, referring to FIG. 5,a controller is operatively coupled to two or more WiFi adaptors andconfigured to operate them independently (98). The controller mayoperate the WiFi adaptors to scan to find available WiFi access pointsproviding connectivity to the internet and/or other remote computingsystems (100). Upon connection to a WiFi access point with the firstWiFi adaptor, the controller may be configured to try to send data to aremote server operatively coupled with the WiFi access point (102). Uponsuccess in sending data to the remote server, the controller may beconfigured to evaluate the connectivity based upon one or more factors,such as latency, packet loss, financial expense of the particularconnection, etc (106). Simultaneously, the second WiFi adaptor may beutilized to connect to a WiFi access point and the controller may beconfigured to attempt to send data to a remote server operativelycoupled to the WiFi access point (104). Upon success in sending data tothe remote server, the controller may be configured to evaluate theconnectivity based upon one or more factors, such as latency, packetloss, financial expense of the particular connection, etc (108).

The controller preferably is configured to select the connectionconfiguration with the best connectivity evaluation results and connectto establish a primary connection (110). The WiFi adaptor not chosen tocarry the primary connection may be utilized to continue to scan forWiFi access points, connect to them, send data to them, and evaluateconnectivity until a secondary connection can be formed (112). Thecontroller may be further configured to evaluate the secondaryconnection in view of the primary connection, and to select theconnection configuration with the best evaluation results to be the newprimary connection (114), which may involve a role reversal forprimary/secondary connections and associated WiFi adaptors. The WiFiadaptor not chosen as the primary connection holder may then be utilizedto scan for WiFi access points, connect to them, send data, and evaluateconnectivity until a new secondary connection may be formed (116).

Referring to FIGS. 6A and 6B, in addition to two or more WiFi typetransceivers (8, 10), a mobile computing system (6), such as a handhelddevice (20) or a mobile telecommunications robot (24) may be operativelycoupled to a cellular mobile transceiver (118), such as one configuredto operate with a TDMA network, CDMA network, PDMA network, GSM network,3G network, 4G network, or the like. Such networks are conventionallyutilized for cellular telephone, but are being utilized for smartphoneand cellmodem connectivity as well. With the added element of one ormore cellular mobile connectivity points, a mobile computing system maybe afforded additional connectivity robustness. For example, referringto FIGS. 7A-7E, a handheld mobile computing system (6, 20) is shownnavigating a similar path as described in reference to FIGS. 2A-2E, withthe addition of a cellular mobile transceiver (118) operatively coupledto the mobile computing system (6, 20), as shown in the embodiment ofFIG. 6A or 6B, and four cellular communication transceiver towers (120,122, 124, 126) dispersed about the region through which the mobilecomputing system (6, 20), is navigated. Referring to FIGS. 7A-7E, as themobile computing system (6, 20) navigates from point “A” (64), to point“1” (70), to point “2” (72), to point “3” (74), to point “B” (66), thecontroller preferably is configured to consider not only the existenceand quality of available WiFi-based connectivity through the nearby WiFiaccess points and intercoupled WiFi adaptor systems, but also thequality and existence of available cellular mobile based connectivitythrough the nearby cellular communication transceiver towers andintercoupled cellular mobile transceiver (118) configuration.

One example of an embodiment combining WiFi and cellular mobileconnectivities leveraged together to improve mobile computingconnectivity robustness is shown in FIG. 8. Referring to FIG. 8, oneembodiment is illustrated wherein a controller is operatively coupled totwo or more WiFi adaptors and one or more cellular mobile adaptors, andconfigured to operate all of them independently and/or simultaneously(134). The controller is configured to operate the WiFi and cellularmobile adaptors to find available access points (i.e., WiFi accesspoints or cellular transmission towers or transceivers) (136). Absent apreexisting primary connection, each available adaptor may be utilizedto search for a connection which may become the primary connection. Uponconnection to a WiFi access point with the first WiFi adaptor, thecontroller may be configured to attempt to send data to a remote serveroperatively coupled to the WiFi access point (138). Upon success insending data to the remote server, the controller may be configured toevaluate the connectivity based upon one or more factors, such aslatency, packet loss, financial expense of the particular connection,etc (144). Upon connection to a WiFi access point with the second WiFiadaptor, the controller may be configured to attempt to send data to aremote server operatively coupled to the WiFi access point (140). Uponsuccess in sending data to the remote server, the controller may beconfigured to evaluate the connectivity based upon one or more factors,such as latency, packet loss, financial expense of the particularconnection, etc (146). Upon connection to a WiFi access point with thecellular mobile adaptor, the controller may be configured to attempt tosend data to a remote server operatively coupled to the cellular mobileadaptor (142). Upon success in sending data to the remote server, thecontroller may be configured to evaluate the connectivity based upon oneor more factors, such as latency, packet loss, financial expense of theparticular connection (such as cellular mobile connectivity fees), etc(148). The controller preferably is configured to select the connectionconfiguration with the best evaluation results and connect using thepertinent adaptor to establish a primary connection (150). The adaptorsnot selected to carry the primary connection preferably are commanded bythe controller to continue to scan for WiFi or cellular mobile accesspoints, connect to such points, send data, and evaluate connectivityuntil one or more secondary connections are formed (152). The controllerpreferably is configured to evaluate the one or more secondaryconnections in view of the primary connection, and select the connectionconfiguration with the best evaluation results to become the new primaryconnection (154). The adaptors not selected to carry the primaryconnection may be commanded by the controller to continue to scan forWiFi or cellular mobile access points, connect to these points, senddata, and evaluate connectivity until one or more secondary connectionoptions is developed (156), and such a cycle may be repeated as theprimary connection is constantly and persistently upgraded while themobile computing system is moved about.

Referring to FIG. 9, many combinations and permutations of connectivityhardware and software may be utilized within the scope of this inventionto provide improved connectivity robustness for mobile computingsystems. For illustrative purposes, FIG. 9 depicts a handheld (20)mobile computing system (6) comprising three WiFi-compatible wirelesstransceivers (8, 10, 12), an 802.16 WiMax wireless transceiver (132), afreespace optical wireless transceiver (130), and two cellular mobiletransceivers—one for 3G networks (118) and one for 4G networks (128),each of which may be operated simultaneously to provide connectivityoptions which may be evaluated by the controller and selectedtransiently as a primary connection, while the other adaptors continueto persistently search for other secondary connection options, any oneof which may become the next primary connection, as described above.

Referring to FIGS. 10-21, various embodiments and configurations areillustrated for optimizing communications between a mobile controller,such as a mobile remote presence system (24), as shown in FIG. 6B, forexample, and a remotely-placed controller, such as a remote server.

Referring to FIG. 10, an embodiment is depicted wherein a controller isoperatively coupled to a single WiFi adaptor that is configured toselectively maintain a connection on a first channel with a reducedtransmission rate, while also being able to background scan on a secondchannel (96). The controller operates the adaptor to scan to find WiFiaccess points and check upon the signal strength of connectivity withthese access points (158). Using the first channel of the adaptor, thecontroller may operate the adaptor to establish a primary connectionwith the WiFi access point having the greatest signal strength (160);simultaneously, the controller may also operate the adaptor to continuescanning on the second channel to try to find other suitable oralternative connectivity access points (162). Subsequent toidentification of an alternative access point, the controller mayevaluate the signal strengths of the connectivity options on the twochannels relative to each other, and select the option with thestrongest signal strength to be the primary connection (in which casethe connection may remain with the previous primary connection, or maybe switched to the other channel which then becomes the new primaryconnection) (164). The WiFi adaptor not chosen to carry the primaryconnection may be configured to continue to scan for alternative WiFiaccess points and to evaluate the signal strength thereof (166); suchadaptor may also be configured to retain the connection it previouslyhad, notwithstanding the fact that such connection was not chosen as thenew primary—because at least in the event that the chosen primary dropsout, a live secondary would be ready to activate without delay. In otherwords, the system may be configured such that a primary is selected andutilized as the main connection, but that the non-primary connection isretained until another nonprimary is found that has greater signalstrength than the first non-primary, in which case it may be deemedworth the transition risk to move to the second non-primary, and,indeed, to compare the strength of this new non-primary to the primaryto see if it should be promoted to primary. As shown in FIG. 10, thecontroller may evaluate the signal strength of alternatives to see if anew primary is selected (168), and the channel that scanned to theaccess point not chosen as primary may be utilized to continue to scanfor other alternatives (170).

Referring to FIG. 11, another embodiment is illustrated wherein two WiFiadaptors are utilized to conduct analysis and connection activitysimilar to the configuration described in reference to FIG. 10, but withthe exception that the embodiment of FIG. 11 has multiple WiFi adaptors(the embodiment of FIG. 10 had only one local WiFi adaptor with multiplechannels). The controller is operatively coupled to two WiFi adaptors(i.e., such as in a configuration wherein two adaptors are carried onboard a mobile electromechanical telepresence system, such as that (24)shown in FIG. 6B) that are configured to operate independently toconnect with available WiFi access points (98). The controller operatesthe adaptors to find access points and evaluate signal strength thereof(172). The controller connects with the strongest signal strength accesspoint as a primary connection (174) and continues to seek otherconnectivity options with the other adaptor (176). The controllercontinues to evaluate connections, and potentially switch out theprimary connection, depending upon what kind of signal strength is foundin the alternatives (178, 180, 182, 184), and as with the embodiment ofFIG. 10, the embodiment of FIG. 11 may be configured to not drop asecondary connection until a good alternative replacement secondaryconnection (which may, indeed, become a primary connection, dependingupon signal strength) is identified.

Referring to FIG. 12, in another embodiment, a controller may beoperatively coupled to two or more WiFi adaptors—and also one or morecellular adaptors, with a configuration to operate all of themindependently (134). The controller may be configured to have all ofthem scan to find access points, and to check the signal strengththereof (186). The controller may evaluate the signal strength resultsand establish a primary connection with the strongest, leaving the otherother adaptors free to seek other suitable alternative connections(188). One or more of the two secondary connections may remain connectedto one or more of the access points not chosen as the primary to providenon-latent redundancy for the primary. A cycle of continued scanning,signal strength analysis, and selection of an access point to carry theprimary connection may be continued, as shown (190, 192, 194, 196).

Referring to FIG. 13, an embodiment similar to that of FIG. 12 is shown,but with only one WiFi adaptor local to the controller (198). A similarprocess of scanning for possible connections to outside access points,evaluating signal strength, and selecting the connection with thehighest signal strength to carry the primary connection while the otheradaptor continues to search for other alternatives may be utilized (200,202, 204, 206, 208, 210).

Referring to FIG. 14, an embodiment similar to that of FIG. 11 is shown,but with two mobile (i.e., cellular wireless network) adaptors local tothe controller (212). A similar process of scanning for possibleconnections to outside access points, evaluating signal strength, andselecting the connection with the highest signal strength to carry theprimary connection while the other adaptor continues to search for otheralternatives may be utilized (214, 216, 218, 220, 222, 224, 226).

Referring to FIGS. 15-19, configurations featuring a two-phase analysisare depicted, wherein a first level of connectivity analysis (signalstrength comparison) is conducted before connecting to a remotecontroller or server. After connection, a second level of connectivityanalysis may be conducted (based upon factors such as latency, packetloss, financial expense of the particular connection, etc) to completethe analysis and selection of a primary connection, after which a cyclicpattern may be conducted to continually update the configuration with anoptimized primary connectivity scenario.

Referring to FIG. 15, a two-phase analysis configuration is illustratedfeaturing a controller operatively coupled to a single WiFi adaptor withmulti-channel connectivity capability (96). The controller scans foraccess points and checks signal strength thereof (158). The controllermay be configured to the access point to the strongest signal strength(228), and to then send data to a remote server through the connectionfor the purposes of further connectivity analysis based upon factorssuch as latency, packet loss, financial expense of the particularconnection, etc) (232). For example, utilities such as that marketed as“MTR” may be utilized; MTR is a diagnostic tool that combines “ping”timing analysis and “traceroute” route analysis functionalities into asingle diagnostic application. Simultaneously and automatically, thecontroller may operate the wifi adaptor to use the other channel to findanother alternative connection, analyze signal strength, connect, andevaluate the connectivity (230, 234, 236). The controller may beconfigured to deem the primary connection the one that has the bestevaluation results (238), and to continue to utilize the other channelto seek alternatives, conduct the two-stage analysis of them, andpotentially switch out the primary connection—to continually optimizethe connection being utilized as the primary (240, 242, 244).

Referring to FIG. 16, an embodiment similar to that of FIG. 15 isillustrated, with the exception that the embodiment of FIG. 16 featuresmultiple independent WiFi adaptors instead of a single WiFi adaptor withmulti-channel capability (98). The controller may be configured to scanthe WiFi adaptors for alternatives and to check signal strength (172),then conduct repeated rounds of further analysis of the connectivity(246, 248, 250, 252, 254, 256, 258, 260, 262), with the objective againbeing to continually optimize connectivity by selecting carefully theconnection being utilized as the primary.

Referring to FIG. 17, an embodiment similar to that of FIG. 16 isillustrated, with the exception that the controller of the embodiment inFIG. 17 is operatively coupled to two or more WiFi adaptors, and also toone or more cellular (i.e., mobile wireless) adaptors (134). Thecontroller is configured to scan all available adaptors to seekconnectivity options that have both high signal strength (186) and alsosolid connection evaluation results based upon factors such as latency,packet loss, and financial expense of connectivity), while cyclingthrough such analysis to continually optimize connectivity by selectingcarefully the connection being utilized as the primary (264, 266, 268,270, 272, 274).

FIG. 18 illustrates an embodiment similar to that of FIG. 17, with theexception that the controller is operatively coupled to one or morecellular adaptors, and one WiFi adaptor (198). The controller isconfigured to scan all available adaptors to seek connectivity optionsthat have both high signal strength (200) and also solid connectionevaluation results based upon factors such as latency, packet loss, andfinancial expense of connectivity), while cycling through such analysisto continually optimize connectivity by selecting carefully theconnection being utilized as the primary (276, 278, 280, 282, 284, 286).

FIG. 19 illustrates an embodiment similar to those of FIGS. 16-18, withthe exception that the controller is operatively coupled to two cellularadaptors, and no WiFi adaptors (212). For example, in one embodiment,one cellular adaptor may be on a different provider network than theother. The controller is configured to scan all available adaptors toseek connectivity options that have both high signal strength (214) andalso solid connection evaluation results based upon factors such aslatency, packet loss, and financial expense of connectivity), whilecycling through such analysis to continually optimize connectivity byselecting carefully the connection being utilized as the primary (288,290, 292, 294, 296, 298, 300, 302, 304).

Referring to FIG. 20, an IEEE 802.11 distributed coordination function(“DCF”) protocol timing diagram is depicted to illustrate that a typical802.11 data transmission (316) is associated with certain wait times orwait periods (306—DCF interfame spacing period “DIFS”, 308—request tosend period “RTS”, 310—short interframe spacing period “SIFS”, 312—clearto send period “CTS”, 314, 318, 320—acknowledgement period “ACK”, 322,324—random backoff period) that are at least somewhat predictable, andwhich may be utilized in a time-multiplexed communication configuration.For example, referring to FIG. 21, a multi-channel (330, 342) singleWiFi (328) configuration is shown such as that which may be utilized inaccordance with the embodiments of FIG. 3, 10, or 15. To minimize packetcollision and maximize the use of bandwidth between the mobilecontroller (326—wheels 344) and the remote controller (340—such as aremote server), packet transmission (316) timing (346) may bemultiplexed or timed as shown. In other words, with a multichannelconfiguration and a single adaptor, to maximize the efficiency ofprimary and background scanning and transmission, time multiplexing asshown may be utilized.

Various exemplary embodiments of the invention are described herein.Reference is made to these examples in a non-limiting sense. They areprovided to illustrate more broadly applicable aspects of the invention.Various changes may be made to the invention described and equivalentsmay be substituted without departing from the true spirit and scope ofthe invention. In addition, many modifications may be made to adapt aparticular situation, material, composition of matter, process, processact(s) or step(s) to the objective(s), spirit or scope of the presentinvention. Further, as will be appreciated by those with skill in theart that each of the individual variations described and illustratedherein has discrete components and features which may be readilyseparated from or combined with the features of any of the other severalembodiments without departing from the scope or spirit of the presentinventions. All such modifications are intended to be within the scopeof claims associated with this disclosure.

Any of the devices described for carrying out the subject diagnostic orinterventional procedures may be provided in packaged combination foruse in executing such interventions. These supply “kits” may furtherinclude instructions for use and be packaged in containers as commonlyemployed for such purposes.

The invention includes methods that may be performed using the subjectdevices. The methods may comprise the act of providing such a suitabledevice. Such provision may be performed by the end user. In other words,the “providing” act merely requires the end user obtain, access,approach, position, set-up, activate, power-up or otherwise act toprovide the requisite device in the subject method. Methods recitedherein may be carried out in any order of the recited events which islogically possible, as well as in the recited order of events.

Exemplary aspects of the invention, together with details regardingmaterial selection and manufacture have been set forth above. As forother details of the present invention, these may be appreciated inconnection with the above-referenced patents and publications as well asgenerally known or appreciated by those with skill in the art. The samemay hold true with respect to method-based aspects of the invention interms of additional acts as commonly or logically employed.

In addition, though the invention has been described in reference toseveral examples optionally incorporating various features, theinvention is not to be limited to that which is described or indicatedas contemplated with respect to each variation of the invention. Variouschanges may be made to the invention described and equivalents (whetherrecited herein or not included for the sake of some brevity) may besubstituted without departing from the true spirit and scope of theinvention. In addition, where a range of values is provided, it isunderstood that every intervening value, between the upper and lowerlimit of that range and any other stated or intervening value in thatstated range, is encompassed within the invention.

Also, it is contemplated that any optional feature of the inventivevariations described may be set forth and claimed independently, or incombination with any one or more of the features described herein.Reference to a singular item, includes the possibility that there areplural of the same items present. More specifically, as used herein andin claims associated hereto, the singular forms “a,” “an,” “said,” andthe include plural referents unless the specifically stated otherwise.In other words, use of the articles allow for at least one of thesubject item in the description above as well as claims associated withthis disclosure. It is further noted that such claims may be drafted toexclude any optional element. As such, this statement is intended toserve as antecedent basis for use of such exclusive terminology as“solely,” “only” and the like in connection with the recitation of claimelements, or use of a “negative” limitation.

Without the use of such exclusive terminology, the term “comprising” inclaims associated with this disclosure shall allow for the inclusion ofany additional element—irrespective of whether a given number ofelements are enumerated in such claims, or the addition of a featurecould be regarded as transforming the nature of an element set forth insuch claims. Except as specifically defined herein, all technical andscientific terms used herein are to be given as broad a commonlyunderstood meaning as possible while maintaining claim validity.

The breadth of the present invention is not to be limited to theexamples provided and/or the subject specification, but rather only bythe scope of claim language associated with this disclosure.

1. A system for maintaining wireless connectivity between a mobilecontroller and a remote controller, comprising: a wireless adaptoroperatively coupled between the mobile controller and each of a firstwireless access point and a second wireless access point, each of whichis operatively coupled to the remote controller, the wireless adaptorconfigured to have a timing-multiplexed operational mode whereinconnectivity may be maintained between the mobile controller and theremote controller on both a first channel to the first wireless accesspoint, and a second channel to the second wireless access point, suchthat data transmission between the mobile controller and remotecontroller is switched between the first channel and the second channelbased at least in part upon data transmission timing gaps associatedwith a protocol that is operated by the wireless adaptor and the twowireless access points; wherein the mobile controller is configured tooperate the wireless adaptor to automatically: a. scan to find availablewireless access points; b. connect to the remote controller through thefirst wireless access point with the first channel and evaluate theconnectivity of the connection; c. while retaining connectivity with theremote controller through the first channel, connect to the remotecontroller through a second wireless access point with the secondchannel and evaluate the connectivity of the connection; d. compare theevaluated connectivities of the first and second channels to find ahighest evaluated channel and a lowest evaluated channel; and e.maintain connectivity between the mobile controller and remotecontroller through the highest evaluated channel.
 2. The system of claim1, wherein the wireless adaptor has a single wireless transmitter. 3.The system of claim 2, wherein the single wireless transmitter is an RFantenna.
 4. The system of claim 2, wherein in a background scanningmode, data is alternated through the single wireless transmitter fromboth the first channel and the second channel.
 5. The system of claim 4,wherein the data is alternated in bit packets based upon a bit packetsize.
 6. The system of claim 4, wherein the data is alternated basedupon a time interval.
 7. The system of claim 5, wherein the bit packetsize is predetermined.
 8. The system of claim 5, wherein the bit packetsize is adjustable using the mobile controller.
 9. The system of claim6, wherein the time interval is predetermined.
 10. The system of claim6, wherein the time interval is adjustable using the mobile controller.11. The system of claim 1, wherein the wireless adaptor is compatiblewith an IEEE 802.11 standard selected from the group consisting of:802.11A, 802.11B, 802.11G, and 802.11N.
 12. The system of claim 1,wherein the wireless adaptor is a cellular telephone adaptor.
 13. Thesystem of claim 1, wherein the wireless adaptor is an IEEE 802.16compatible adaptor.
 14. The system of claim 1, wherein the wirelessadaptor is a free-space optical adaptor.
 15. The system of claim 1,wherein the mobile controller is configured to operate the wirelessadaptor to scan using a discrete frequency band.
 16. The system of claim15, wherein the discrete frequency band is selected based upon adetermined prevalence of active wireless access points.
 17. The systemof claim 1, wherein the mobile controller is configured to scan again tofind available wireless access points after disconnecting connectivitybetween the mobile controller and remote controller through the lowestevaluated channel.
 18. The system of claim 1, wherein the mobilecontroller is configured to repeatedly cycle between scanning to findavailable wireless access points and disconnecting connectivity betweenthe mobile controller and remote controller through the lowest evaluatedchannel.
 19. The system of claim 18, wherein the mobile controller isconfigured to repeatedly cycle at a frequency between about 100cycles/second and about ½ cycles/second.
 20. The system of claim 1,wherein the mobile controller is coupled to a motorized vehicle.
 21. Thesystem of claim 20, wherein the motorized vehicle comprises a robot. 22.The system of claim 1, wherein the mobile controller is configured toevaluate the connectivity of the connection with the first or secondchannel based at least in part upon a factor selected from the groupconsisting of: latency, packet loss, and financial cost of connectivity.23. The system of claim 1, wherein the mobile controller further isconfigured to operate the wireless adaptor to automatically disconnectconnectivity between the mobile controller and remote controller throughthe lowest evaluated channel.
 24. The system of claim 1, wherein atleast one of the data transmission timing gaps is based upon an IEEE802.11 distributed coordination function timing protocol.
 25. The systemof claim 24, wherein at least one of the timing gaps represents aprotocol element selected from the group consisting of: a random backoffperiod, a DCF interframe spacing period, a request to send period, ashort interframe spacing period, a clear to send period, and anacknowledgement period.